package com.ruoyi.kis.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.*;

import javax.validation.Valid;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;

/**
 * @Author: zhanglm
 * @CreateDate: 2025-02-17 9:44
 * @FullNameClass: com.ruoyi.kis.domain.DispatchOrderF
 * @Description: 发货单明细表实体类
 */
@AllArgsConstructor
@NoArgsConstructor
@Getter
@Setter
@ToString
public class DispatchOrderF {
    @JsonProperty("FInterID")
    private String FInterID;
    @JsonProperty("FEntryID")
    private String FEntryID;
    @JsonProperty("FBillNo")
    private String FBillNo;
    @JsonProperty("FDocumentStatus")
    private String FDocumentStatus;
    @JsonProperty("FCheckDate")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String FCheckDate;
    @JsonProperty("FDate")
    private String FDate;
    @JsonProperty("F_HCH_Text1")
    private String F_HCH_Text1;
//    @JsonProperty("F_HCH_Text1_ID")
//    private String F_HCH_Text1_ID;
//    @NotNull(message = "ID cannot be null")
    @JsonProperty("ID")
    private String ID;
    @JsonProperty("Department")
    private String Department = "";
    @JsonProperty("FDeptID")
    private String FDeptID = "";
    @JsonProperty("FCustID")
    private String FCustID = "";//购货单位
    @JsonProperty("FBillerID")
    private String FBillerID;
    @JsonProperty("FFManagerID")
    private String FFManagerID;
    @JsonProperty("FSManagerID")
    private String FSManagerID;
    @JsonProperty("FSalType")
    @NotEmpty(message = "销售方式FSalType必填")
    private String FSalType;//销售方式


    @JsonProperty("SupplierCode")
    private String SupplierCode;//供应商编码
    @JsonProperty("DepartmentCode")
    private String DepartmentCode;//部门编码

    @NotEmpty(message = "FROB 不能为空")
    @JsonProperty("FROB")
    private String FROB;//是否退货单过来，退货单为-1，红色：-1，正常为1
    @JsonProperty("FExplanation")
    private String FExplanation;//摘要字段
    @JsonProperty("FaHuoKou")
    private String FaHuoKou = "";//发货口
    @NotNull(message = "单据头FSelTranType 不能为空")
    @JsonProperty("FSelTranType")//上游单据类型
    private String FSelTranType;
    @Valid
    @JsonProperty("FEntity")
    private List<DispatchOrderS> FEntity;
}


